Alternativă self-hosted la TeamViewer: Cum să deploy-ezi un server și un client privat RustDesk pe un VPS Linux?

Giteqa

Salutare, prieteni!

Serviciile de acces la distanță precum TeamViewer și AnyDesk și-au înăsprit în ultimii ani politicile corporative, au introdus limitări pentru utilizarea gratuită și au blocat conturile utilizatorilor în mai multe regiuni. Pentru administratori de sistem, dezvoltători și companii, acesta a fost un semnal clar pentru trecerea la soluții self-hosted.

Astăzi vreau să vorbesc despre o astfel de soluție, și anume RustDesk — o alternativă modernă Open Source la TeamViewer, scrisă în limbajul Rust. Aceasta vă permite să deploy-ați propriul server de semnalizare și retransmisie (Relay Server) pe VPS-ul dvs., asigurând controlul complet asupra traficului, criptarea end-to-end și conectarea instantanee la desktop de pe orice sistem de operare (Windows, macOS, Linux, Android, iOS).

În acest ghid, vom analiza arhitectura RustDesk, vom configura un server privat de Relay pe un VPS Linux prin Docker, vom instala pas cu pas aplicația client pe Ubuntu 26.04 și vom arăta cum să vă conectați la Ubuntu prin aplicația RustDesk de pe un PC cu Windows OS.

 Key Takeaways: Concluzii cheie

  • Confidențialitate și securitate absolută: Întregul trafic grafic și comenzile sunt direcționate prin VPS-ul dvs. personal. Companiile terțe nu au acces la sesiunile dvs., iar toate datele sunt criptate prin chei Ed25519.

  • Viteză ridicată și latență scăzută: Amplasarea propriului server de semnalizare și relay RustDesk pe un VPS într-un data center apropiat elimină întârzierile specifice serverelor publice supraîncărcate AnyDesk/TeamViewer.

  • Multiplatformă fără abonamente: Clientul RustDesk funcționează pe toate sistemele de operare populare (Windows, macOS, Linux, Android, iOS), nu necesită licențe și nu limitează durata sesiunii.

  • Instalare simplă pe VPS Linux: Pentru lansarea clientului pe un server cu interfață grafică sunt suficiente câteva comenzi de bază și librăria libfuse2.

Experiență personală: Cum am implementat RustDesk Server în activitatea mea

„Anterior, foloseam diverse soluții RDP pentru conectarea la serverul meu pe care rulează Ubuntu, însă aproape la fiecare soluție apăreau detalii tehnice care îmi îngreunau munca. Cel mai probabil, cel mai deranjant factor îl reprezentau cerințele mari de resurse. Am decis să încerc RustDesk și îl folosesc de ceva timp.

Rezultatul: răspunsul interfeței a devenit extrem de rapid și confortabil, transferul de fișiere între Linux și Windows funcționează fără erori, iar cel mai important — sunt complet sigur că datele comerciale și sesiunile de administrare nu trec prin servere proxy terțe. Controlez absolut totul în mod independent, ceea ce înseamnă securitate maximă.”

— Anatolie Cohaniuc

Arhitectura unui server propriu RustDesk

Infrastructura proprie RustDesk consta din două componente cheie (servicii sau containere Docker):

  1. hbbs (RustDesk ID / Rendezvous Server): Serverul de semnalizare. Este responsabil de înregistrarea clienților, emiterea ID-urilor unice și stabilirea conexiunilor directe P2P între dispozitive.

  2. hbbr (RustDesk Relay Server): Serverul de retransmisie a traficului (folosit în cazul rețelelor cu NAT strict sau firewall-uri).

Capitolul 1. Ghid pas cu pas pentru instalarea RustDesk Server prin Docker

Deploy-ul propriului server RustDesk pe un server virtual (Ubuntu/Debian) durează mai puțin de 5 minute prin intermediul Docker.

Pasul 1: Pregătirea porturilor în firewall Pentru o funcționare corectă a RustDesk pe VPS-ul dvs., trebuie să deschideți următoarele porturi de rețea:

Port / ProtocolDestinație
21115/tcpFuncții de sistem hbbr / hbbs
21116/tcp, 21116/udpPortul principal pentru semnalizare P2P și străpungerea NAT (Hole punching)
21117/tcpPortul serverului de retransmisie (Relay Server)
21118/tcp, 21119/tcpPorturi pentru funcționarea clientului web (opțional)

Dacă aveți activat UFW, rulați comenzile:

Bash
sudo ufw allow 21115/tcp
sudo ufw allow 21116/tcp
sudo ufw allow 21116/udp
sudo ufw allow 21117/tcp
sudo ufw allow 21118/tcp
sudo ufw allow 21119/tcp

Pasul 2: Instalarea dependențelor și a clientului RustDesk Trebuie să rulați următoarele comenzi pentru ca totul să se instaleze și să funcționeze corect:

Bash
# Instalarea dependențelor
sudo apt update && sudo apt install -y wget libfuse2

# Descărcarea pachetului .deb RustDesk
wget https://github.com/rustdesk/rustdesk/releases/download/1.3.8/rustdesk-1.3.8-x86_64.deb

# Instalarea clientului RustDesk
sudo apt install -y ./rustdesk-1.3.8-x86_64.deb

După executarea acestor comenzi, treceți în interfața grafică a serverului pentru a obține datele necesare conectării și pentru a seta adresa serverului dvs. și cheia publică.

Ghid video

Pentru o mai bună claritate, am filmat un tutorial video care arată întregul proces de instalare și conectare la Ubuntu de pe Windows 11:

FAQ: Pe scurt despre ce este mai important

  • Ce configurație VPS este necesară pentru rularea RustDesk Server? Serverul RustDesk este extrem de eficient. Pentru a deservi zeci de sesiuni simultane de acces la distanță este suficient un VPS de bază cu 1 vCPU, 1 GB RAM și 10 GB stocare NVMe.

  • Ce să fac dacă nu mă pot conecta fără introducerea cheii publice? Dacă nu completați câmpul Key în client, serverul va refuza conexiunea (dacă în hbbs este activată verificarea autenticității). Utilizarea obligatorie a cheii protejează serverul dvs. Relay împotriva utilizării de către persoane neautorizate.

  • Se poate deploy-a RustDesk pe un server cu IP dinamic? Da. Pentru aceasta, configurați un serviciu DDNS (cum ar fi Cloudflare DDNS sau DuckDNS) și specificați numele de domeniu în parametrii -r your_domain.com:21117 în locul unei adrese IP statice.

  • Cum setez o parolă permanentă pentru conectarea la VPS Linux? În fereastra aplicației RustDesk de pe server, apăsați pe pictograma de setări de lângă câmpul Password și selectați Set permanent password. Acest lucru vă va permite să vă conectați la desktop în orice moment, fără a fi nevoie să solicitați o parolă temporară.

Concluzie

Deploy-ul propriului server și client RustDesk reprezintă cea mai bună soluție pentru cei care au nevoie de un acces la distanță stabil, independent și complet securizat la calculatoare și servere din orice colț al lumii. Scăpați definitiv de limitările comerciale, de întreruperile neașteptate ale sesiunilor și preluați controlul asupra securității traficului în propriile mâini.

Condiția principală pentru un transfer fluent al graficii, fără întârzieri sau deconectări, este stabilitatea canalului de rețea și o latență minimă către data center-ul VPS.

Dacă intenționați să deploy-ați propriul server RustDesk sau o infrastructură de acces la distanță, descoperiți opțiunile NVMe Cloud VPS de la MivoCloud. Platforma noastră bazată pe virtualizare KVM pură, resurse garantate CPU/RAM, discuri Enterprise NVMe de mare viteză și canale de rețea de 1 Gbps+ va asigura un răspuns instantaneu al desktop-ului administrat 24/7.

Autorul articolului: Anatolie Cohaniuc